package com.futureCloudMOM.core.service;

import com.futureCloudMOM.core.domain.ProduceTaskBillRoutingMaterial;
import com.futureCloudMOM.core.domain.ProduceTaskBillRoutingParam;
import com.futureCloudMOM.core.domain.ProduceTaskBillRoutingProcess;
import com.futureCloudMOM.core.base.service.BaseService;

import java.util.List;

/**
 * 【Produce_TaskBillRoutingProcess】的数据库操作Service
 *
 * @author Administrator
 * @since 2023-06-06 16:03:21
 */
public interface ProduceTaskBillRoutingProcessService extends BaseService<ProduceTaskBillRoutingProcess> {

    /**
     * 根据生产订单ID查询
     *
     * @param billId 生产订单ID
     * @return 列表
     */
    List<ProduceTaskBillRoutingProcess> selectListByBillId(Long billId);

    /**
     * 根据工艺路线ID创建订单工序
     *
     * @param billId    生产订单ID
     * @param routingId 工艺路线ID
     */
    void create(Long billId, Long routingId);

    /**
     * 根据订单ID删除订单工序
     *
     * @param billId 生产订单ID
     */
    void deleteByBillId(Long billId);

    /**
     * 根据订单工艺工序ID 查询订单工艺工序下面的用料信息
     * @param processId 订单的工序工序ID
     */
    List<ProduceTaskBillRoutingMaterial> getTaskBillRoutingMaterialListByTaskBillId(Long processId);

    /**
     *  根据订单工艺工序ID 查询订单工艺工序下面的加工参参数信息
     * @param processId 订单的工艺工序ID
     */
    List<ProduceTaskBillRoutingParam> getTaskBillRoutingParamListByTaskBillId(Long processId);

}
